﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using CardTypes = Wormhole.Engine.CardLibrary.CardTypes;
using CardProperties = Wormhole.Engine.CardLibrary.CardProperties;

namespace Wormhole.Engine.CardLibrary.SG1.Cards.Hero.Mission
{
	/// <author>Rodney McKay</author>
	/// <date>08 April 2008</date>
	/// <summary>
	/// Convert Jaffa, Jaffa Training Camp
	/// </summary>
	/// <card>
	///		<title>Convert Jaffa</title>
	///		<subtitle>Jaffa Training Camp</subtitle>
	///		<gameText>If there have been no successful missions this turn, this mission gets difficulty +1.</gameText>
	///		<lore>Contact enemy Jaffa that have been training to infiltrate Earth as SGC soldiers. Convince them their Goa'uld lord is no longer in power.</lore>
	///		
	///		<collectorInfo>
	///			<expansion>1</expansion>
	///			<rarity>Special</rarity>
	///			<number>166</number>
	///		</collectorInfo>
	///		
	///		<skill>Culture</skill>
	///		<difficulty>3</difficulty>
	///		<glyph>Triangulum</glyph>
	///		<experience>1</experience>
	/// </card>
	public class SG1S166 : CardTypes.Mission
	{
		#region Properties

		#region Title
		/// <summary>
		/// The Card Title
		/// </summary>
		public override string Title
		{
			get { return "Convert Jaffa"; }
		}
		#endregion

		#region Subtitle
		/// <summary>
		/// Mission subtitle.
		/// </summary>
		public override string Subtitle
		{
			get { return "Jaffa Training Camp"; }
		}
		#endregion

		#region Game Text
		/// <summary>
		/// The mission game text.
		/// </summary>
		public override string GameText
		{
			get { return "If there have been no successful missions this turn, this mission gets difficulty +1."; }
		}
		#endregion

		#region Lore
		/// <summary>
		/// The mission lore text.
		/// </summary>
		public override string Lore
		{
			get
			{
				return "Contact enemy Jaffa that have been training to infiltrate Earth as SGC soldiers. Convince them their Goa'uld lord is no longer in power.";
			}
		}
		#endregion

		#region Type
		/// <summary>
		/// The skill required for this mission.
		/// </summary>
		public override CardProperties.Skill Type
		{
			get { return CardProperties.Skill.Culture; }
		}
		#endregion

		#region Difficulty
		/// <summary>
		/// The mission difficulty
		/// </summary>
		public override int Difficulty
		{
			get { return 3; }
		}
		#endregion

		#region Glyph
		/// <summary>
		/// The glyph that will be earned on mission success.
		/// </summary>
		public override CardProperties.Glyph Glyph
		{
			get { return CardProperties.Glyph.Triangulum; }
		}
		#endregion

		#region Experience
		/// <summary>
		/// The experience that will be gained upon successfull completion.
		/// </summary>
		public override int Experience
		{
			get { return 1; }
		}
		#endregion

		#region Collector Info
		private CardProperties.CollectorInfo _collectorInfo;
		/// <summary>
		/// The collector information.
		/// </summary>
		public override CardProperties.CollectorInfo CollectorInfo
		{
			get
			{
				if (this._collectorInfo == null)
				{
					this._collectorInfo = new CardProperties.CollectorInfo();
					this._collectorInfo.Expansion = 1;
					this._collectorInfo.Rarity = CardProperties.Rarity.StarterDeck;
					this._collectorInfo.Number = 166;
				}

				return this._collectorInfo;
			}
		}
		#endregion

		#region Image URI
		private Uri _imageUri;
		/// <summary>
		/// The location of the card image.
		/// </summary>
		public override Uri ImageUri
		{
			get
			{
				if (this._imageUri == null)
				{
					this._imageUri = new Uri("pack://application:,,,/Wormhole.Engine.CardLibrary.SG1;component/Images/Hero/Mission/1S166.jpg", UriKind.Absolute);
				}

				return this._imageUri;
			}
		}
		#endregion

		#endregion

		#region Constructor
		/// <summary>
		/// Initialize a new instance of the class.
		/// </summary>
		/// <param name="owner">The card owner.</param>
		public SG1S166(Player.Player owner)
			: base(owner)
		{

		}
		#endregion
	}
}
